home *** CD-ROM | disk | FTP | other *** search
/ Games of Daze / Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso / x2ftp / msdos / theory / ifai_cyc / article.wf < prev   
Text File  |  1995-03-25  |  28KB  |  540 lines

  1. IF, AI, and the confabulating-arranger model of interactive fiction
  2. by Jorn Barger (jorn@mcs.com)
  3. September 26, 1994
  4.  
  5. Abstract: One plausible  design-paradigm for interactive fiction might
  6. be to supply   IF authors with an   extensive library of   intelligent
  7. objects that 'know' how to   interact realistically, including a  rich
  8. model   of  human  behavior.  Doug  Lenat's   Cyc   project is already
  9. attacking this task from a traditional AI perspective, but for IF this
  10. knowledge may be  more simply collected  in the form of *stories*-- in
  11. fact, a new mailinglist on the Internet is devoted to compiling such a
  12. story-library.  If this library also  tags all the *most  interesting*
  13. possible   plot-lines, the  computer's  task    might be  extended  to
  14. "confabulating" the  player's  reality, on   the fly,   simultaneously
  15. arranging both past  and  future so   as to open  as  many interesting
  16. plot-directions as possible.
  17.  
  18.  
  19. A  couple of issues ago (IED  7.4), Chris Crawford discussed the basic
  20. known  'topologies'  for interactive fiction (IF)--   each of which he
  21. showed to contain intractable fatal flaws.  Basically, *interactivity*
  22. implies that the user is making choices,  which implies that the story
  23. is  branching   into a  tree-like  topology.   But  Chris  showed that
  24. storytrees must either be folded back on themselves in a very limiting
  25. way, or have most of  their branches  trimmed to (violent)  dead-ends.
  26. If  they   don't, they'll  necessarily    expand  exponentially...  so
  27. consequently, within  these design paradigms, even high-budget efforts
  28. are doomed to produce only simplistic and uninvolving games....
  29.  
  30. The fantasy for  the distant future, of  course, is  that the computer
  31. should  offer an infinitely-various  Virtual Reality,  full of objects
  32. and characters whose behavior mimics 'real  life' in great detail.  In
  33. the  ideal future, one  should be  able  to step  into the  pages of a
  34. Dickens or Tolstoy novel and interact with its characters as freely as
  35. in 'real' life....
  36.  
  37. But how  do we get  there from  here  What sorts  of design strategies
  38. might make these new forms of IF possible?
  39.  
  40. Certainly, one step in the right direction  will be to teach computers
  41. the basic laws  by which real  objects  interact, which is  one of the
  42. traditional challenges    of artificial intelligence   (AI).  In  this
  43. article,  I'll first  explore the AI-world's  leading  contender for a
  44. truly  intelligent program-- the  Cyc project.  Then  I'll look at how
  45. Cyc's models overlap with those  of traditional text-adventure  games.
  46. I'll discuss a potentially-simpler  strategy for compiling a 'Cyc' for
  47. IF, using a text format called a "meta-story", and offer some examples
  48. of how these  can capture knowledge  in an intuitive way.  And finally
  49. I'll explore a new paradigm for IF-- the confabulating-arranger model.
  50.  
  51.  
  52. The Cyc project as a universal knowledgebase
  53.  
  54. The last  thirty years  of academic AI   research have  produced  very
  55. little  that computer-game designers  would find useful.  The problems
  56. they've chosen to research have been too  limited, and the programming
  57. structures they  seem   to  favor are   impossibly  slow for  realtime
  58. gameplay.   So the world of  gaming has pretty much  had to invent its
  59. own styles of AI, as it's needed them.
  60.  
  61. But for  the  last ten  years,  a highly   ambitious (and surprisingly
  62. low-profile!) effort has been underway  in Austin, Texas, to spell out
  63. the entire range of human commonsense knowledge. The  goal of this Cyc
  64. (for enCYClopedia) project is a program that can read a newspaper, and
  65. 'understand' what  it  has read, well  enough to  detect violations of
  66. common sense, just as  human readers can.  But  to the extent that  it
  67. succeeds at *this*, it  should be equally useful,  at least in theory,
  68. for maintaining internal consistency in a virtual world....
  69.  
  70. The Cyc team, led by Doug  Lenat, has been  trying to break down human
  71. understanding   into   thousands    of  subdomains    that   they call
  72. "micro-theories", like  ailments, food-preparation, communication, and
  73. corporate behavior, and then trying to translate  the basic 'rules' of
  74. each such domain into the language of  symbolic logic.  When they need
  75. to  say,  "If someone   is  asphyxiating,  they cannot  breathe,"  for
  76. example, they write:
  77.  
  78. (LogImplication
  79.   (LogAnd
  80.      (allInstancesOf $AIL Asphyxiation)
  81.      (bodilyInvolved $AIL $AGT))
  82.   (holdsIn $AIL
  83.     (LogNot (behaviorCapable $AGT Breathing bodilyInvolved))))
  84.  
  85. where $AIL and $AGT are the variables for ailment and agent,
  86.       LogAnd, LogNot, and LogImplication are simple logical connectives
  87. and "holdsIn" defines the context within which this 'axiom' holds.
  88.  
  89. According to   the Cyc model,   if an  adventure game  needed  to know
  90. what-happens-next at any particular point-- say, when a person drops a
  91. delicate vase-- it would  send  a query  to Cyc and   in a matter   of
  92. seconds, Cyc should  return with the news  that vases dropped on  hard
  93. surfaces usually *shatter*...
  94.  
  95. Unfortunately, if you multiply that plausible retrieval-time times the
  96. thousands or hundreds of thousands  of deductions that would be needed
  97. to keep an interactive fiction realistic from moment to moment, you're
  98. forced to the conclusion that  Cyc just isn't going  to be fast enough
  99. to support IF, anytime soon.
  100.  
  101. Probably  the worst problem  here   is that Cyc--  unlike  *any* other
  102. largescale project  in  history-- didn't  evolve  by  starting with  a
  103. simpler  version   of   the whole,   and  gradually  filling   in  the
  104. less-important  details.   Rather,  Cyc is   being built  by  the much
  105. riskier strategy of accumulating   detailed subsections, one  by  one,
  106. with *no known overall pattern*... and later streamlining it down to a
  107. "core knowledge  base".  To  make that streamlined  enough  for IF may
  108. turn out to be the hardest challenge of all!
  109.  
  110. So Cyc offers  a good startingpoint for IF-theory,  with regard to the
  111. knowledge it hopes  to embody, but perhaps   not so good a model  with
  112. regard to the performance constraints of realtime IF.  But we know for
  113. certain that  some  level of  realtime    IF is possible--  Zork   and
  114. Hitchhiker's Guide  (etc)  have proven  that!   But is there a  way to
  115. build an "IF engine" that includes something more like Cyc?
  116.  
  117.  
  118. Text-adventure development languages
  119.  
  120. The enduring  popularity of  text  adventures, especially  the Infocom
  121. games of the early 1980s, has led a  number of talented enthusiasts to
  122. create    programming   languages      especially  for  text-adventure
  123. development.  Many of these are available free  on the Internet, where
  124. the newsgroup rec.arts.int-fiction supports  a thriving subculture  of
  125. text-adventure designers working in these formats.  (The newsgroup has
  126. its archives at ftp.gmd.de in /if-archive/.)
  127.  
  128. TADS (The Text-Adventure Development System) by  Michael J. Roberts is
  129. probably the  most popular environment,  because games created in TADS
  130. can  be run on  almost every major  hardware platform.   TADS offers a
  131. modest range  of predefined object-types  that have at least a minimal
  132. level of intelligence    about their  own behavior.   Containers   and
  133. vehicles, for example, understand that objects placed within them will
  134. move with them, and will be  invisible unless the container or vehicle
  135. is  transparent.  Characters automatically grow  hungry  if they don't
  136. eat, and even eventually die.
  137.  
  138. TADS is object-oriented, with  the objects themselves  containing most
  139. of the code embodying such "story elements":
  140.  
  141. class openable: container
  142.     contentsReachable = { return( self.isopen ); }
  143.     contentsVisible = { return( self.isopen ); }
  144.     isopenable = true
  145.     ldesc =
  146.      { caps(); self.thedesc;
  147.        if ( self.isopen )
  148.        { " is open. ";
  149.          pass ldesc;}
  150.        else " is closed. "; }
  151. [etc]
  152.  
  153. The TADS object-hierarchy is firmly grounded in story-telling pragmatics:
  154.  
  155. Thing
  156.   Item: vehicle, surface, lightsource, key, food, container, clothing
  157.   FixedItem: switch, dial, button, decoration, actor, chair
  158.   Room
  159.  
  160. Cyc,  by contrast, offers at  the  highest level the following, rather
  161. less pragmatic, partial object hierarchy:
  162.  
  163. Thing
  164.   Intangible
  165.   IndividualObject
  166.     Event
  167.     Stuff
  168.       Process
  169.         SomethingExisting
  170.           TangibleObject
  171.  
  172.  
  173. The Wisdom-FAQ mailinglist
  174.  
  175. If a knowledgebase like TADS's could be gradually extended, ultimately
  176. even to the full extent targeted by Cyc, this  would surely be a major
  177. step towards better  IF.  So with this  in  mind, a  group of  us from
  178. rec.arts.int-fiction  (and elsewhere) have  spun off a new mailinglist
  179. to  investigate the possibility  of  building a  sort of public-domain
  180. 'Cyc' for IF.
  181.  
  182. The  name for  the  mailinglist-- Wisdom  FAQ-- is   derived  from the
  183. Internet tradition  of Frequently-Asked-Questions files  (FAQs), which
  184. try to condense,  into the  most  accessible format possible, all  the
  185. most *useful* information on any given topic.  The "Wisdom FAQ" can be
  186. seen as a (rather  grandiose!)  image of a FAQ  that tries  to contain
  187. *all* the wisdom of the world, on every  topic... starting, of course,
  188. with those truths most useful  for interactive fiction.  (To subscribe
  189. to  the list,  send  me  a request   at  wisdom-request@mcs.com.   The
  190. accumulated    archives can   be    ftp'd     from  ftp.mcs.com     in
  191. mcsnet.users/jorn/wisdom/.   If you need me to  email them to you, let
  192. me know how many kilobytes your emailbox can handle at once.)
  193.  
  194. The mailinglist is grappling simultaneously   with the task of  simply
  195. accumulating 'story  elements' or axioms, and  the more difficult task
  196. of agreeing on  a standardized way   of expressing them.   Because the
  197. latter task is more technical and less interesting  to many people, it
  198. will likely be spun off into a second list of its own sometime soon.
  199.  
  200. The task  of  enumerating story-elements, though,  is  not so  much  a
  201. question  of  *technical* as  of  *storytelling*  expertise.  For this
  202. reason, the Wisdom-list  eagerly welcomes  non-technical  contributors
  203. who nevertheless have  a knack for spinning out  plotlines, or a  gift
  204. for clever plot twists...
  205.  
  206.  
  207. Every object tells a story... don't it?
  208.  
  209. The obvious way to  keep these collections of story-elements organized
  210. is  according to which objects in   the object-hierarchy they require.
  211. It's not *that* hard, for  any object in a game  (or in the world), to
  212. rattle off the basic rules of its behavior.  One strategy for 'priming
  213. your pump' might be to ask:
  214.  
  215. - Where does this object come from?  
  216. - How does a person come into relationship with it?  
  217. - How might the person use the object?  
  218. - How might they change it?  
  219. - How might they be changed by it?  
  220. - How might their relationship with it end?  
  221. - How might it cease to exist?
  222.  
  223. One convenient format  for  compiling the  answers  to these questions
  224. might be called a "meta-story":
  225.  
  226. The food meta-story:  A person tended  a garden or farm raising plants
  227. or animals to eat or sell.  They harvested  the food when the time was
  228. right and sold it or preserved it or prepared it  and ate it or fed it
  229. to friends or family.    If it was   well-prepared, their hunger   was
  230. satisfied  and  they  were  happy.  The   food  travelled  thru  their
  231. intestines and had to be  excreted.   If they  didn't get enough  good
  232. food, they got thin and died.  Maybe the person preparing the food put
  233. poison in  it to injure the  person  who ate it.   They might  have to
  234. disguise the flavor of the poison.  Maybe  they prepared it poorly and
  235. it tasted bad.
  236.  
  237. The bottle  meta-story: A person heated  up  some sand  in an oven and
  238. blew air into it  with  a straw until it   became a bottle.  When   it
  239. cooled, they could pour liquids into it and put a cork or cap on it to
  240. keep the  liquids from spilling or  evaporating.  They could also fill
  241. it by dipping it into a larger body of liquid. When they took the cork
  242. out they could pour out the liquids, or drink from the bottle.  Two or
  243. more people could pass the bottle around and share the drink.  If they
  244. dropped  the bottle  on  something  hard, it probably   broke, and any
  245. liquid in  it spilled out.  The broken  glass could cut a  person when
  246. they touched it,  if they weren't careful.   It could make a  car tire
  247. flat.  If  a barefoot person stepped  on it they would   get cut.  The
  248. broken base might act like a lens to focus  light and start a fire, or
  249. magnify something tiny. (The bottle with clear liquid in it might also
  250. be a lens.)  The person  could knock  someone unconscious by  breaking
  251. the bottle  over  their head.  They could  use  the bottleneck to make
  252. their guitar  play better.  They  could roll dough   flat by using the
  253. bottle like a rollingpin. (etc)
  254.  
  255.  
  256. So one approach the Wisdom-list may use could  be to accumulate a sort
  257. of 'children's encyclopedia' of  these meta-stories,  elaborating each
  258. of them to whatever level of detail our creativity allows.
  259.  
  260. But simply  enriching  the   supply  of  intelligent   objects   won't
  261. necessarily make the IF-author's job  easier.  For one thing, the more
  262. pre-existing behavior that's been supplied for the game's objects, the
  263. harder  it will  become for the  author to  anticipate  every possible
  264. solution to the game's puzzles.  In fact, the  farther we move in this
  265. direction, the less attractive the whole  idea of *puzzle-oriented IF*
  266. begins to seem...
  267.  
  268.  
  269. IF and 'psychology objects'
  270.  
  271. Cyc has  been circling closer and  closer to the  task of representing
  272. *human dramas*, and claims already to have a working model of emotions
  273. and  motivations,   but the Wisdom-list won't   stand  a chance  if it
  274. doesn't directly confront the problem of encoding *literary* plots.
  275.  
  276. The  classic analysis of literary  plots is George Polti's "Thirty-Six
  277. Dramatic    Situations".  Polti  analysed    a huge  range of  classic
  278. plotlines  in  literature, and declared  these  to be the  basic ones:
  279. Supplication, Deliverance, Revenge,  Vengeance by  Family upon Family,
  280. Pursuit,  Victim of Cruelty  or  Misfortune, Disaster, Revolt,  Daring
  281. Enterprise,   Abduction, Enigma, Obtaining,  Familial Hatred, Familial
  282. Rivalry,  Murderous Adultery,  Madness, Fatal  Imprudence, Involuntary
  283. Crimes of Love, Kinsman Kills Unrecognised Kinsman, Self Sacrifice for
  284. an Ideal,   Self Sacrifice for Kindred,    All Sacrificed for Passion,
  285. Sacrifice of  Loved  Ones,  Rivalry  Between Superior   and  Inferior,
  286. Adultery,  Crimes of  Love,   Discovery of Dishonor  of  a  Loved One,
  287. Obstacles to  Love,  An Enemy Loved,  Ambition,  Conflict with a  God,
  288. Mistaken Jealousy, Faulty Judgement, Remorse, Recovery  of a Lost One,
  289. Loss of Loved Ones
  290.  
  291. Only a few of  these will normally turn  up in the course of  applying
  292. the meta-story approach to story *objects*, because the most important
  293. 'objects' in  literary plots tend  to  be  *psychological* ones,  like
  294. emotions and motivations.
  295.  
  296. The meta-story approach can  still work fine as  a way of accumulating
  297. story-elements,  though,  even  if   you choose  a   totally arbitrary
  298. startingpoint  (for example, hypnosis), so  long as you're comfortable
  299. with the storytelling aspect of things:
  300.  
  301. The 'hypnosis' meta-story:  Once a person  learned  they could control
  302. others by hynosis.   So they hynotized  others into giving  away their
  303. money and  power and their health and  their  self-respect.  And these
  304. people didn't  even realize  what  had happened to  them.   Eventually
  305. things got so bad they were desperate to discover  the source of their
  306. situation.  Then one person got a glimpse  of the truth, and then lost
  307. it, and then saw it again, and tried to tell others, and got dismissed
  308. as crazy, and attacked, but finally figured  out how to lead others to
  309. see the   truth,   and they rose  up   together   and overthrew  their
  310. oppressors.
  311.  
  312. The intuitive familiarity of the  story-format allows almost any topic
  313. to be productively explored...
  314.  
  315.  
  316. Reverse-engineering emergent-behavior
  317.  
  318. While the artificial-life theorists have been hoping to discover a few
  319. simple laws that will result in a vast  payoff of interesting stories,
  320. via   the principle  of  'emergent behavior',  the meta-story approach
  321. might be thought of as an attempt  to outdo them by 'cheating'-- first
  322. you spell out the  stories you want to see  'emerge', and only then do
  323. you analyse them and try to 'reverse engineer' the set of simpler laws
  324. that will produce them.
  325.  
  326. So  even    something  as  simple as    Maslow's   hierarchy  of needs
  327. (physiological,  safety,   belongingness and love,  esteem, cognitive,
  328. aesthetic, and self-actualization needs),   which  might seem  like  a
  329. plausible startingpoint  for a simple  set of  a-life laws, leading to
  330. emergent behavior, reveals some extremely inobvious patterns (at least
  331. from a mathematical point of view), when analysed for meta-stories:
  332.  
  333. The physiological-needs meta-story: Every  so  often, a person gets  a
  334. craving to consume  food  and drink.  They  usually arrange  to have a
  335. source  of these nearby,  that they can  rely on for purity.  They may
  336. prepare the  food and drink,  cooking things, cutting them  up, mixing
  337. them together, adding flavorings to make  the experience pleasant.  Or
  338. maybe they  expect another person  to  do that for  them.  Usually,  a
  339. group of people who live together will sit down together  to eat, at a
  340. table  with plates and   silverware and glasses.   Afterwards, someone
  341. must clean up.  Sometimes they may eat at restaurants, or in a vehicle
  342. as they travel.  They may carry a container of water to drink (perhaps
  343. flavored or  mixed  with nutrients or  stimulants  or intoxicants), or
  344. stop at a vending machine or drinking fountain  or coffee machine.  If
  345. a person's daily calories  consumed don't equal their calories burned,
  346. they lose weight.  If they  consume more, they  gain weight.  If  they
  347. lose too  much   weight, or  fail  to  drink   enough, they can   die.
  348. Water-plus-wastes      is       excreted          by        urination,
  349. food-after-nutrient-absorption by defecation.
  350.  
  351. The safety-needs meta-story:   A person felt  unsafe, and  they didn't
  352. like   it.    Maybe there    were  other people  or   animals  around,
  353. untrustworthy ones,  and their home  wasn't secure.  Maybe they had to
  354. leave the safety of   their home  during the   day, and risked   being
  355. attacked.  Maybe it  was nature that threatened  them, in the  form of
  356. high cliffs, deep holes, quicksand, dangerous bodies of water, weather
  357. that's too cold, hot, or violent, etc.  Maybe it was poorly maintained
  358. technology that was the danger.  The person changed the environment or
  359. changed their behavior  so that the danger was  lessened and they felt
  360. safer.
  361.  
  362. The  belongingness-and-love-needs meta-story:  A  person felt  lonely.
  363. They  sought out others' company and  acted charming  so they would be
  364. welcome.  Or they acted domineering so that others  would be afraid to
  365. reject them.  Or they acted hurt so that others pitied them.
  366.  
  367. The esteem-needs meta-story: A  person felt that  no one  respected or
  368. appreciated them.   So they tried to  do something admirable, and then
  369. made sure that others  knew about it.   Or maybe they lied about doing
  370. something admirable.
  371.  
  372. The cognitive-needs meta-story: A person  needed to know something, or
  373. was  just curious.  They  sought out a book and  read it, or a teacher
  374. and took a  class or asked them questions.   Or they just observed the
  375. thing they didn't understand, and thought deeply about it, maybe doing
  376. experiments.  If they discovered something new they probably published
  377. their findings.
  378.  
  379. The  esthetic-needs meta-story: A person  was oppressed by a boring or
  380. ugly environment, so they made or  acquired or sought out objects that
  381. were pleasing   to their senses.  Maybe they   recorded the process of
  382. creation, so that  it could be  reexperienced later, by others.  Maybe
  383. they positioned these creations within their environment so they could
  384. experience them often.  Maybe they grew bored with them after a time.
  385.  
  386. The self-actualization-needs meta-story:  A person had everything they
  387. needed,  but didn't feel fulfilled.  So  they looked within themselves
  388. to discover what their heart wanted most, and followed their bliss...
  389.  
  390.  
  391. "SimNormal"
  392.  
  393. Given the ambitious scope of  the Wisdom list,  there's a serious risk
  394. of getting bogged down in such a mass of story-content, that one loses
  395. any  sense of a   startingpoint, and so   also any chance  of actually
  396. building a working IF program!
  397.  
  398. One way to keep these  meta-stories somewhat 'grounded in reality'  is
  399. to visualize them as being acted out on  a computer screen, using even
  400. the fairly  primitive existing standard  for  graphics adventures like
  401. King's Quest and its ilk.  If  your stories are  too abstract for this
  402. technology, you  probably  haven't thought   them  through in   enough
  403. detail!
  404.  
  405. I like to imagine a sort of SimCity-like environment where a community
  406. of  little  NPC's  go through  their  daily  routines   of  life, in a
  407. completely   rote fashion,  *with no   emergent  behavior  expected or
  408. desired*.   (In    honor  of Normal,   Illinois,   I  call this  world
  409. "SimNormal".)
  410.  
  411. Looking again at  the belongingness-needs meta-story above, it's clear
  412. that before you can visualize it as a SimNormal animation, you have to
  413. break it  down further, according  to certain typical patterns  of how
  414. these needs are satisfied:
  415.  
  416. The  casual-acquaintance meta-story: A person gets  to know another by
  417. being introduced, or  by introducing themselves,  or by crossing paths
  418. occasionally.  When  they   meet  they exchange  mild    greetings and
  419. smalltalk about weather, news, gossip, entertainment they've seen.  If
  420. nothing divisive turns up, they  may gradually open  up and trust each
  421. other more.
  422.  
  423. The simplest  way  to encode  this might be  to  give  each  person an
  424. intimacy-level    toward each other  one.     *Zero* would mean  total
  425. strangers, but each time they noticed a given person it might increase
  426. by  one.  When    it    reached    five,  say,  they'd     shift    to
  427. casual-acquaintance  mode,   and  greet   each other.    If    they're
  428. introduced, on the other hand,  they might reach  five right away.  As
  429. this  number  continues to grow,   their  greetings should become more
  430. extended in time, stopping to chat if they're  not in a hurry.  (There
  431. could  be a   *chatting   animation* that's   designed to be    cycled
  432. continually,  for  whatever  duration  they've  reached.)  Discovering
  433. common  interests  may    cause  the   intimacy-level   to  skyrocket.
  434. Discovering incompatibilities, or failing to see each other for a long
  435. time, can cause the intimacy-level to drop.
  436.  
  437. The best-friend  meta-story: A person gradually  gets to  know someone
  438. else,   and enjoys spending time  with  them. (Or  maybe it's a sudden
  439. strong connection.)  They  arrange to spend  time  together, do things
  440. together, maybe talk on the phone.  They tell each other their private
  441. worries,  and try to help each  other.  These exchanges make them feel
  442. better.  Sometimes  they fight,  and  reconcile or  not.  Maybe one of
  443. them gets an S.O. and that causes them  to break apart.  Maybe it just
  444. stops being so fun, and they drift apart.
  445.  
  446. A  person  may maintain   a 'short list'  of  those  with  the highest
  447. intimacy rating, and when they're bored or upset they'll look to these
  448. for support.  A  person-soothes-person2  story could be very  simple--
  449. time is consumed  and person2 feels  better. (Person1  may or  may not
  450. feel worse-- if they do, it bodes  ill for the friendship!)  There may
  451. be a certain potential for conflict at each point, which should depend
  452. on the   sorts  of personalities they   are,   and whether  they're in
  453. competition for scarce resources.
  454.  
  455. The pals meta-story:  A person has one or  more best friends, and that
  456. group grows larger as others are  allowed to join their get-togethers.
  457. Maybe they're invited  or maybe they just show  up and tag  along.  If
  458. someone doesn't  like them they may   be driven off.  Several  times a
  459. week, at least, they arrange to  meet together.  Maybe there's a power
  460. struggle between two  who both want  to lead.   Maybe one by  one they
  461. drop out; maybe others take their places.
  462.  
  463. The planning-logistics of getting a group of free-thinking individuals
  464. together are a lot more complex than for just  two.  Maybe any of them
  465. can invite  the  others--  there'll  need to  be  be  a  'get-together
  466. meta-story' to handle this.
  467.  
  468. The housemates meta-story: A person moves into a living-place with one
  469. or more  housemates, sharing  common areas.  Usually,   the housemates
  470. play  the role of  friends to some  degree,  listening to each others'
  471. daily stories.  Some housemates are neater than  others, and this will
  472. lead to conflicts.  When bills arrive, they sometimes have to be split
  473. up unevenly and  this may cause  tensions.  One person is probably the
  474. most responsible, signing  the checks, etc.   Each probably has one or
  475. more annoying traits that *try* the patience of the others.  Maybe one
  476. by one they move away, and  are replaced by others,  or maybe they all
  477. leave at once.
  478.  
  479. The co-workers meta-story: A  person gets a job  at a  workplace, with
  480. others.   Some   of   these become  friends,    others  maybe   casual
  481. acquaintances.  Some become enemies.  Even when they fight, they still
  482. have to work together, or quit, or ask for  a transfer.  Their enemies
  483. may try to make them look bad to their bosses.
  484.  
  485.  
  486. The confabulating-arranger model of IF
  487.  
  488. So if we  continue to pursue these directions  of research, what sorts
  489. of IF might become possible?   How do you  give the player an infinite
  490. world, and still   keep enough control to  involve  them in especially
  491. interesting stories?
  492.  
  493. If  the computer 'knows'  all the most  interesting sorts of dramas in
  494. literature, one strategy could  have it be  continually, unobtrusively
  495. *revising* the virtual world  behind the scenes, so  as to open up  as
  496. many interesting plotlines as possible.
  497.  
  498. So the game might open with a person  in their apartment, waking up in
  499. the  morning, and if  they go  outdoors  they may be  presented with a
  500. series of  neighbors whose dramas they can  become involved in...  but
  501. none  of these dramas    needs to have   been  worked  out  in  detail
  502. beforehand.   Rather, the computer   will continually  *improvise* new
  503. possibilities based on  the player's choices, and  the view of reality
  504. they've been allowed thus far.  If the player chooses not to follow up
  505. any given  opening, that's no  problem...  there  will be  many  other
  506. options to explore.
  507.  
  508. This way, the  past  is as *undetermined*  as  the future, and  can be
  509. molded to any extent, limited only by what the player has already been
  510. shown and  told.   So the computer  is  *actively* arranging that  new
  511. developments   will  be as  interesting  as possible-- "confabulating"
  512. reality, to use a psychiatric term.
  513.  
  514. And in this, the  "confabulating-arranger" model perhaps most  closely
  515. resembles *the activity of the brain*, during *dreams*...!
  516.  
  517.  
  518. Bibliography
  519.  
  520. Chris Crawford, "Flawed Methods for Interactive Storytelling" IED 7.4,
  521. April 1994.
  522. Douglas B. Lenat  and    R.V. Guha, "Building   Large  Knowledge-Based
  523. Systems" Addison-Wesley 1991.
  524. Michael J. Roberts, "TADS: The Text-Adventure Development System" Palo
  525. Alto, High-Energy Software, 1992.
  526. George Polti, "The Thirty-Six Dramatic Situations" Boston, The Writer,
  527. 1977 (originally published 1900).
  528.  
  529. Some journal references for more on Cyc:
  530.  
  531. "CYC" AI Magazine 7(1), 1986
  532. "When will machines learn?" Machine Learning, Dec 1989
  533. "Cyc: Toward Programs With Common Sense" CACM, Aug 1990
  534. "Knowledge and Natural Language Processing" CACM, Aug 1990
  535. "Common Sense and the Computer" Discover magazine, Aug 1990
  536. "Cyc: A Mid-Term Report" AI Magazine, Fall 1990
  537. "The commonsense reviews" Artificial Intelligence, 61(1), 1993
  538. "CYC-O" Wired magazine, Apr 1994
  539. "Enabling agents to work together" CACM, 37(7), 1994
  540.